package org.jcodetools.security.md5;

import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

/**
 * <div style="color:green;font-weight: bolder;">
 * 	<h3></h3>
 * 	&emsp;&emsp;描述：MD5加密
 * </div>
 * @author xiongyan
 * @date 2016年4月7日 下午1:37:01
 * @history
 * 	<add>
 * 		@functionName 
 *  	@author 
 *  	@date 2016年4月7日 下午1:37:01
 *  	@remark 
 * 	</add>
 * 	<upd> 
 * 		@functionName 
 *  	@author 
 *  	@date 2016年4月7日 下午1:37:01
 *  	@remark 
 * 	</upd>
 */
public class MD5 {
	
	public static String encode(String code) {
		MessageDigest md5 = null;

		StringBuffer encode = new StringBuffer();
		try {
			md5 = MessageDigest.getInstance("MD5");
			byte[] byteArray;
			byteArray = code.getBytes("UTF-8");
			byte[] md5Bytes = md5.digest(byteArray);
			for (int i = 0; i < md5Bytes.length; i++) {
				int val = ((int) md5Bytes[i]) & 0xff;
				if (val < 16) {
					encode.append("0");
				}
				encode.append(Integer.toHexString(val));
			}
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		} catch (NoSuchAlgorithmException e) {
			e.printStackTrace();
		}
		return encode.toString();
	}
}
